/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package compras.beans;

import entities.PedidoFabrica;
import entities.Usuario;
import facades.PedidoFabricaFacade;
import javax.inject.Named;
import javax.enterprise.context.SessionScoped;
import java.io.Serializable;
import java.util.Date;
import javax.enterprise.event.Event;
import javax.inject.Inject;
import qualifiers.EventoEntidadCreada;
import qualifiers.UsuarioLogeado;

/**
 *
 * @author damfercer
 */
@Named(value = "nuevoPedidoFabricaBean")
@SessionScoped
public class NuevoPedidoFabricaBean implements Serializable {
    @Inject
    @UsuarioLogeado
    Usuario usuarioLogeado;
    @Inject
    private PedidoFabrica nuevoPedidoFabrica;
    @Inject
    private PedidoFabricaFacade pedidoFabricaFacade;
    @Inject
    @EventoEntidadCreada
    Event<PedidoFabrica> eventoNuevoPedidoFabrica;

    /**
     * Creates a new instance of NuevoPedidoBean
     */
    public NuevoPedidoFabricaBean() {
    }

    /**
     * @return the nuevoPedido
     */
    public PedidoFabrica getNuevoPedidoFabrica() {
        return nuevoPedidoFabrica;
    }

    /**
     * @param nuevoPedido the nuevoPedido to set
     */
    public void setNuevoPedidoFabrica(PedidoFabrica nuevoPedidoFabrica) {
        this.nuevoPedidoFabrica = nuevoPedidoFabrica;
    }
    
    public String crearPedidoFabrica(){
        Date ahora=new Date();
        nuevoPedidoFabrica.setFechaCreacion(ahora);
        nuevoPedidoFabrica.setFechaUltimaModificacion(ahora);
        nuevoPedidoFabrica.setUsuarioCreador(usuarioLogeado);
        nuevoPedidoFabrica.setUltimoUsuario(usuarioLogeado);
        pedidoFabricaFacade.create(nuevoPedidoFabrica);
        eventoNuevoPedidoFabrica.fire(nuevoPedidoFabrica);
        return "/views/produccion/EditarProductosPedidoFabrica?faces-redirect=true";
    }
    
    public void reinitPedidoFabrica(){
        this.nuevoPedidoFabrica=new PedidoFabrica();
    }
}
